Executing an instruction step-by step
Let’s begin at the beginning. Assume that the program counter initially contains
the 8-bit binary value 00000111 (we will assume 8-bit arithmetic in this example
for the sake of simplicity).
At the first clock pulse, the program counter is incremented to point at the next
instruction; that is, it changes fro m 00000111 to 00001000. Note the incremented
is by 1 and not 4 because this has an 8-bit instruction set. The PCs of real 32-bit
processors are incremented by 4.
Here we show the PC’s timing. At the clock pulse (the rising edge of the clock) the
value changes to 00001000 for the duration of the current cycle.
This is the address of the instruction we are going to execute.